Jump to content

Google Nexus 9 (htc-flounder)

From postmarketOS Wiki
Google (HTC) Nexus 9 (Wifi)
Nexus 9
Nexus 9
Manufacturer Google (HTC)
Name Nexus 9 (Wifi)
Codename htc-flounder
Released 2014
Type tablet
Hardware
Chipset Nvidia Tegra K1 (T132)
CPU 2.3 GHz dual-core 64-bit Denver
GPU 192-core Kepler
Display 2048×1536 LCD IPS
Storage 16GB/32GB
Memory 2 GB LPDDR3-1866
Architecture aarch64
Software
Original software
The software and version the device was shipped with.
Android 5.0
Extended version
The most recent supported version from the manufacturer.
Android
postmarketOS
Category testing
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
yes
Device package device-htc-flounder
Kernel package linux-postmarketos-grate
Features
Flashing
It is possible to flash the device with pmbootstrap flasher.
Works
USB Networking
After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).
Broken
Battery
Charging and battery level reporting works
Works
Screen
Display works. Ideally with sleep mode and brightness control.
Partial
Touchscreen
Works
Multimedia
3D Acceleration
Broken
Audio
Audio playback, microphone, headset and buttons.
Broken
Camera
Broken
Connectivity
WiFi
Works
Bluetooth
Broken
GPS
Broken
NFC
Near Field Communication
Broken
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Untested
USB OTG
USB On-The-Go or USB-C Role switching
Works
Sensors
Accelerometer
Auto screen rotation works in desktops e.g. Phosh or Plasma Mobile
Broken
Magnetometer
Sensor to measure magnetism
Broken
Ambient Light
Broken
Hall Effect
Also known as flip cover sensor
Broken
Power Sensor
Sensor to monitor current, voltage and power. Not fuel gauge!
Works

Contributors

  • lillywho
  • Segfault

Device owners


How to enter flash mode

Hold Power + Volume Down, press Power to confirm Fastboot mode Note that in Fastboot mode you can check from the text in the header if your device is the Wifi (htc-flounder) or LTE (htc-flounder_lte) version.

Installation

$ pmbootstrap flasher flash_kernel
$ pmbootstrap flasher flash_rootfs

LTE version =

The LTE version won't boot with the kernel of the wifi version because the bootloader only loads the kernel image if the device tree blob (DTB) has a compatible property field. That is `google,flounder64` for the WiFi version and `google,flounder64_lte` for the LTE. (see [1]) After that change the LTE will boot as well.

Mainlining notes

An ongoing mainline port is available here https://github.com/TuxThePenguin0/linux/tree/htc-flounder

  • A sector with a GPT partition table is provided by the bootloader but that GPT is empty, instead TegraPT is used
  • Broadcom BCM4354XKUBG wifi module
  • Broadcom BCM4752 GPS
  • Broadcom BCM2079x NFC (enable on PB1, irq on PR7, wake on PS1, i2c addr 0x77)
  • NXP tfa9895 audio amp (enable on PX5, i2c addr 0x34)
  • NXP tfa9895l amp (i2c addr 0x35)
  • Realtek rt5677 codec (enable on PX3, i2c addr 0x2d)
  • USB port is EHCI1, id pin is PW2
  • On the LTE version the modem is on EHCI2

See also